package com.example05.demo.service.impl;

import com.example05.demo.dao.CategoryDao;
import com.example05.demo.pojo.Category;
import com.example05.demo.pojo.vo.ResultVO;
import com.example05.demo.service.CategoryService;
import com.example05.demo.utils.MybatisUtils;
import com.example05.demo.utils.PageBean;
import com.example05.demo.utils.ResultUtils;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import java.util.List;

public class CategoryServiceImpl implements CategoryService {

    @Override
    public ResultVO<?> getCategoryList(String pageN,String pageS) {
        if (pageN.isEmpty()||pageS.isEmpty()){
            return ResultUtils.error(400,"参数错误","当前页或者当前页元素个数不能为空");
        }
        CategoryDao categoryDao = MybatisUtils.getMapper(CategoryDao.class);
        int pageNum = Integer.parseInt(pageN);
        int pageSize = Integer.parseInt(pageS);
        //开启分页
        PageHelper.startPage(pageNum,pageSize);
        //查询
        List<Category> categories = categoryDao.queryAllCategory();
        //封装
        PageInfo<Category> pageInfo = new PageInfo<>(categories);
        List<Category> list = pageInfo.getList();
        PageBean<List<Category>> pageBean = new PageBean<>((int)pageInfo.getTotal(),pageInfo.getPages(),list , pageNum, pageSize);
        return ResultUtils.success(pageBean);
    }
}
